/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.ppsa.dao;

import com.ppsa.bean.PerfilBean;
import com.ppsa.bean.ReunionBean;
import com.ppsa.bean.TareaBean;
import com.ppsa.bean.UsuarioBean;
import com.ppsa.common.Constantes;
import java.util.List;


import java.sql.DriverManager;
import java.sql.ResultSet;
import java.util.ArrayList;

/**
 *
 * @author AdminTdp
 */
public class TareaDao extends AccesoDao {

    public TareaDao() throws AccesoDaoException {
        super();
    }

    public List<TareaBean> listarTarea(TareaBean objA_tareaBean , UsuarioBean objL_usuario) throws Exception {
        List<TareaBean> lstL_tarea = new ArrayList<TareaBean>();


        TareaBean objL_tarea = null;
        try {
            //this.objPt_conn = objPt_dataSource.getConnection();
            this.objPt_conn = DriverManager.getConnection(strpv_conexionUrl);
            String strl_procedure = "{ call ppsa_sp_listarTarea(?) }";
            objPt_cstmt = objPt_conn.prepareCall(strl_procedure);
            objPt_cstmt.setString( 1, objL_usuario.getStrpv_codigoUsuario() );
            objPt_rs = objPt_cstmt.executeQuery();
            while( objPt_rs.next() ) {
                objL_tarea = new TareaBean();
                objL_tarea.setStrpv_codigoAsignacion(objPt_rs.getString("ID_ASIGNACION"));
                objL_tarea.setStrpv_nombreTarea(objPt_rs.getString("NOMBRE"));
                objL_tarea.setStrpv_descripcionTarea(objPt_rs.getString("DESCRIPCION"));
                objL_tarea.setStrpv_fechaPlazo(objPt_rs.getString("FECHA_PLAZO"));
                objL_tarea.setStrpv_porcentaje(objPt_rs.getString("PORCENTAJE"));
                lstL_tarea.add(objL_tarea);
            }
        } catch ( Exception ex ) {
            ex.printStackTrace();
        } finally {
            closeCallableStatement(objPt_cstmt);
            closeResultSet(objPt_rs);
            closeConnection(objPt_conn);
        }
        return lstL_tarea;
    }

    public Integer actualizarPorcentajeAsignacion( String strpv_codigoAsignacion, String strpv_porcentaje, UsuarioBean objL_usuario ) throws Exception{
        Integer intL_temp = -1;
        try {
            //this.objPt_conn = objPt_dataSource.getConnection();
            this.objPt_conn = DriverManager.getConnection(strpv_conexionUrl);
            String strl_procedure = "{ call ppsa_sp_actualizarPorcentajeAsignacion(?,?,?) }";
            objPt_cstmt = objPt_conn.prepareCall(strl_procedure);
            objPt_cstmt.setInt( 1,Integer.parseInt(strpv_codigoAsignacion) );
            objPt_cstmt.setString( 2, objL_usuario.getStrpv_codigoUsuario() );
            objPt_cstmt.setString( 3, strpv_porcentaje );
            
            intL_temp = objPt_cstmt.executeUpdate();
          
        } catch ( Exception ex ) {
            ex.printStackTrace();
        } finally {
            closeCallableStatement(objPt_cstmt);
            closeResultSet(objPt_rs);
            closeConnection(objPt_conn);
        }
        return intL_temp;
    }

}
